home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 1 / The Arsenal Files (Arsenal Computer).ISO / archive / unixarc.pt2 < prev    next >
Internet Message Format  |  1994-01-23  |  68KB

  1. From pacbell!ames!husc6!bbn!bbn.com!rsalz Sun Jul  3 03:27:26 1988
  2. From: rsalz@uunet.uu.net (Rich Salz)
  3. Newsgroups: comp.sources.unix
  4. Subject: REPOST v15i078:  ARC (PC compression program), v5.21, Part02/05
  5. Message-ID: <970@fig.bbn.com>
  6. Date: 3 Jul 88 10:27:26 GMT
  7.  
  8. Submitted-by: hyc@math.lsa.umich.edu
  9. Posting-number: Volume 15, Issue 78
  10. Archive-name: arc5.21/part02
  11.  
  12. #--------------------------------CUT HERE-------------------------------------
  13. #! /bin/sh
  14. #
  15. # This is a shell archive.  Save this into a file, edit it
  16. # and delete all lines above this comment.  Then give this
  17. # file to sh by executing the command "sh file".  The files
  18. # will be extracted into the current directory owned by
  19. # you with default permissions.
  20. #
  21. # The files contained herein are:
  22. #
  23. # -rw-r--r--  1 hyc         54144 Jun 13 05:26 Arc521.doc
  24. # -rw-r--r--  1 hyc          7232 Jun 12 19:31 arc.1
  25. #
  26. echo 'x - Arc521.doc'
  27. if test -f Arc521.doc; then echo 'shar: not overwriting Arc521.doc'; else
  28. sed 's/^X//' << '________This_Is_The_END________' > Arc521.doc
  29. X
  30. X
  31. X
  32. X
  33. X
  34. X
  35. X
  36. X
  37. X
  38. X
  39. X
  40. X
  41. X                          ARC
  42. X
  43. X                 File Archive Utility
  44. X                     Version 5.20
  45. X
  46. X
  47. X
  48. X
  49. X
  50. X
  51. X
  52. X
  53. X
  54. X
  55. X
  56. X
  57. X
  58. X
  59. X
  60. X
  61. X
  62. X
  63. X
  64. X
  65. X
  66. X
  67. X
  68. X
  69. X
  70. X                 (C)COPYRIGHT 1985,86
  71. X                          by
  72. X          System Enhancement Associates, Inc.
  73. X                  ALL RIGHTS RESERVED
  74. X
  75. X
  76. X
  77. X
  78. X
  79. XThis document describes version 5.20 of the ARC file
  80. Xutility, which was created by System Enhancement
  81. XAssociates, Inc. in October of 1986.
  82. X
  83. X
  84. X        TABLE OF CONTENTS
  85. X
  86. X
  87. X
  88. XSection                                           Page
  89. X
  90. X
  91. XIntroduction  ....................................   1
  92. XUsing ARC  .......................................   3
  93. XARC commands  ....................................   5
  94. X    Adding files  ................................   5
  95. X    Extracting files  ............................   7
  96. X    Deleting files  ..............................   8
  97. X    Listing archive entries  .....................   8
  98. X    Running files  ...............................  10
  99. X    Printing files  ..............................  11
  100. X    Testing an archive  ..........................  11
  101. X    Converting an archive  .......................  12
  102. XARC options  .....................................  13
  103. X    Suppressing compression  .....................  13
  104. X    Backup retention  ............................  14
  105. X    Message suppression  .........................  15
  106. X    Encryption/Decryption  .......................  17
  107. XRAMdisk support  .................................  18
  108. XMARC  ............................................  19
  109. XARCE  ............................................  20
  110. XVersion numbers  .................................  21
  111. XCommon questions and answers  ....................  22
  112. XMaintenance contracts  ...........................  24
  113. XRevision history  ................................  25
  114. X    Changes in version 3  ........................  25
  115. X    Changes in version 4  ........................  25
  116. X    Changes in version 4.1  ......................  26
  117. X    Changes in version 4.3  ......................  26
  118. X    Changes in version 4.4  ......................  27
  119. X    Changes in version 4.5  ......................  27
  120. X    Changes in version 5.0  ......................  28
  121. X    Changes in version 5.1  ......................  29
  122. X    Changes in version 5.2  ......................  30
  123. XProgram history and credits  .....................  31
  124. XBulletin boards  .................................  33
  125. XSite licenses  ...................................  34
  126. X
  127. X
  128. X
  129. X
  130. X
  131. X
  132. X
  133. X
  134. X
  135. X
  136. X
  137. X
  138. X
  139. X          INTRODUCTION
  140. X
  141. X
  142. X
  143. XARC is the copyrighted property of System Enhancement
  144. XAssociates, Inc.  You are granted a limited license to
  145. Xuse ARC, and to copy it and distribute it, provided
  146. Xthat the following conditions are met:
  147. X
  148. X1) No fee may be charged for such copying and
  149. X   distribution.
  150. X
  151. X2) ARC may ONLY be distributed in its original,
  152. X   unmodified state.
  153. X
  154. X3) ARC may *not* be distributed, in whole or in part, as
  155. X   part of any commercial product or service without
  156. X   the express written permission of System
  157. X   Enhancement Associates.
  158. X
  159. X
  160. XContributions for the use of this program will be
  161. Xappreciated, and should be sent to:
  162. X
  163. X          System Enhancement Associates, Inc.
  164. X             21 New Street, Wayne NJ 07470
  165. X
  166. XYou may not use this product in a commercial
  167. Xenvironment or a governmental organization without
  168. Xpaying a license fee of $35.  Site licenses and
  169. Xcommercial distribution licenses are available.  A
  170. Xprogram disk and printed documentation are available
  171. Xfor $50.  See the order form enclosed with this manual
  172. Xfor more details.
  173. X
  174. X
  175. X
  176. XARC is user supported software.  This means that you
  177. Xmay copy it freely and give the copies away to anyone
  178. Xyou wish, at no cost.  They are in turn requested to
  179. Xsend in a contribution if they decide to use it.
  180. X
  181. XThe user supported software concept (often referred to
  182. Xas "shareware") is an attempt to provide software at low
  183. Xcost.  The cost of offering a new product by
  184. Xconventional means is staggering, and hence dissuades
  185. Xmany independent authors and small companies from
  186. Xdeveloping and promoting their ideas.  User supported
  187. Xsoftware is an attempt to develop a new marketing
  188. Xchannel, where products can be introduced at low cost.
  189. X
  190. X
  191. X
  192. X
  193. XARC                                              Page 1
  194. X If user supported software works, then everyone will
  195. Xbenefit.  The user will benefit by receiving quality
  196. Xproducts at low cost, and by being able to "test
  197. Xdrive" software thoroughly before purchasing it.  The
  198. Xauthor benefits by being able to enter the commercial
  199. Xsoftware arena without first needing large sources of
  200. Xventure capital.
  201. X
  202. XBut it can only work with your support.  We're not
  203. Xjust talking about ARC here, but about all user
  204. Xsupported software.  If you obtain a user supported
  205. Xprogram from a friend or colleague, and are still
  206. Xusing it after a couple of weeks, then it is obviously
  207. Xworth something to you, and a contribution should be
  208. Xsent.
  209. X
  210. X
  211. X
  212. XAnd now, back to ARC:
  213. X
  214. XARC is used to create and maintain file archives.  An
  215. Xarchive is a group of files collected together into
  216. Xone file in such a way that the individual files may
  217. Xbe recovered intact.
  218. X
  219. XARC is different from other archive and library
  220. Xutilities in that it automatically compresses the
  221. Xfiles being archived, so that the resulting archive
  222. Xtakes up a minimum amount of space.
  223. X
  224. XWhen ARC is used to add a file to an archive it
  225. Xanalyzes the file to determine which of three storage
  226. Xmethods will result in the greatest savings.  These
  227. Xthree methods are:
  228. X
  229. X1) No compression; the file is stored as is.
  230. X
  231. X2) Repeated-character compression; repeated sequences
  232. X   of the same byte value are collapsed into a three-
  233. X   byte code sequence.
  234. X
  235. X3) Dynamic Lempel-Zev compression;  the file is stored
  236. X   as a series of variable size bit codes which
  237. X   represent character strings, and which are created
  238. X   "on the fly".
  239. X
  240. XNote that since one of the three methods involves no
  241. Xcompression at all, the resulting archive entry will
  242. Xnever be larger than the original file.
  243. X
  244. X
  245. X
  246. X
  247. X
  248. XARC                                              Page 2
  249. X            USING ARC
  250. X
  251. X
  252. X
  253. XARC is invoked with a command of the following format:
  254. X
  255. X    ARC <x> <arcname> [<template> . . .]
  256. X
  257. XWhere:
  258. X
  259. X    <x> is an ARC command letter (see below), in
  260. X    either upper or lower case.
  261. X
  262. X    <arcname> is the name of the archive to act on,
  263. X    with or without an extension.  If no extension is
  264. X    supplied, then ".ARC" is assumed.  The archive
  265. X    name may include path and drive specifiers.
  266. X
  267. X    <template> is one or more file name templates.
  268. X    The "wildcard" characters "*" and "?" may be used.
  269. X    A file name template may include a path or drive
  270. X    specifier, though it isn't always meaningful.
  271. X
  272. X
  273. XIf ARC is invoked with no arguments (by typing "ARC",
  274. Xand pressing "enter"), then a brief command summary is
  275. Xdisplayed.
  276. X
  277. X
  278. X
  279. XFollowing is a brief summary of the available ARC
  280. Xcommands:
  281. X
  282. X    a   = add files to archive
  283. X    m   = move files to archive
  284. X    u   = update files in archive
  285. X    f   = freshen files in archive
  286. X    d   = delete files from archive
  287. X    x,e = extract files from archive
  288. X    r   = run files from archive
  289. X    p   = copy files from archive to standard output
  290. X    l   = list files in archive
  291. X    v   = verbose listing of files in archive
  292. X    t   = test archive integrity
  293. X    c   = convert entry to new packing method
  294. X
  295. X
  296. X
  297. X
  298. X
  299. X
  300. X
  301. X
  302. X
  303. XARC                                              Page 3
  304. X Following is a brief summary of the available ARC
  305. Xoptions, which may alter how a command works:
  306. X
  307. X    b   = retain backup copy of archive
  308. X    s   = suppress compression (store only)
  309. X    w   = suppress warning messages
  310. X    n   = suppress notes and comments
  311. X    o   = overwrite existing files when extracting
  312. X    g   = encode or decode archive entry
  313. X
  314. X
  315. X
  316. X
  317. X
  318. X
  319. X
  320. X
  321. X
  322. X
  323. X
  324. X
  325. X
  326. X
  327. X
  328. X
  329. X
  330. X
  331. X
  332. X
  333. X
  334. X
  335. X
  336. X
  337. X
  338. X
  339. X
  340. X
  341. X
  342. X
  343. X
  344. X
  345. X
  346. X
  347. X
  348. X
  349. X
  350. X
  351. X
  352. X
  353. X
  354. X
  355. X
  356. X
  357. X
  358. XARC                                              Page 4
  359. X          ARC COMMANDS
  360. X
  361. X
  362. X
  363. XThis section describes each of the commands.  ARC will
  364. Xaccept any one command at a time.  If no commands are
  365. Xgiven, then a brief command list is displayed.
  366. X
  367. X
  368. X
  369. XADDING FILES
  370. X
  371. XFiles are added to an archive using the "A" (Add), "M"
  372. X(Move), "U" (Update), or "F" (Freshen) commands.  Add
  373. Xalways adds the file.  Move differs from Add in that
  374. Xthe source file is deleted once it has been added to
  375. Xthe archive.
  376. X
  377. XUpdate differs from Add in that the file is only added
  378. Xif it is not already in the archive, or if it is newer
  379. Xthat the corresponding entry in the archive.
  380. X
  381. XFreshen is similar to Update, except that new files
  382. Xare not added to the archive; only files already in
  383. Xthe archive are updated.
  384. X
  385. X
  386. XFor example, if you wish to add a file named
  387. X"TEST.DAT" to an archive named "MY.ARC", you would use
  388. Xa command of the form:
  389. X
  390. X    ARC a my test.dat
  391. X
  392. XIf you wanted to add all files with a ".C" extension,
  393. Xand all files named "STUFF" to an archive named
  394. X"JUNK.ARC", you could type:
  395. X
  396. X    ARC a junk *.c stuff.*
  397. X
  398. XIf you wanted to move all files in your current
  399. Xdirectory into an archive named "SUM.ARC", you could
  400. Xuse a command of the form:
  401. X
  402. X    ARC m sum *.*
  403. X
  404. XIf you have an archive named "TEXT.ARC", and you
  405. Xwanted to add to it all of your files with an
  406. Xextension of ".TXT" which have been created or changed
  407. Xsince they were last archived, then you would type:
  408. X
  409. X    ARC u text *.txt
  410. X
  411. X
  412. X
  413. XARC                                              Page 5
  414. X If you have a bunch of files in your current
  415. Xdirectory, with backup copies being stored in an
  416. Xarchive named "SAFE.ARC", then if you wanted to make
  417. Xsure that every file in the archive is the latest
  418. Xversion of that file, you would type:
  419. X
  420. X    ARC f safe
  421. X
  422. X
  423. XA word about Update and Freshen:  These are similar in
  424. Xthat they look at the date and time of last change on
  425. Xthe file, and only add it if the file has been changed
  426. Xsince it was last archived.  They differ in that
  427. XUpdate will add new files, while Freshen will not.
  428. X
  429. XIn other words, Update looks for the files on disk,
  430. Xand adds them if they are new or have changed, while
  431. XFreshen looks in the archive, and tries to update the
  432. Xfiles which are already there.
  433. X
  434. X
  435. XArchive entries are always maintained in alphabetic
  436. Xorder.  Archive entries may not have duplicate names.
  437. XIf you add a file to an archive that already contains
  438. Xa file by that name, then the existing entry in the
  439. Xarchive is replaced.  Also, the archive itself and its
  440. Xbackup will not be added.
  441. X
  442. XYou may also add a file which is in a directory other
  443. Xthan your current directory.  For example, it is
  444. Xperfectly legal to type:
  445. X
  446. X    ARC a junk c:\dustbin\stuff.txt
  447. X
  448. XYou cannot add two files with the same name.  In other
  449. Xwords, if you have a file named "C:\DUSTBIN\STUFF.TXT"
  450. Xand another file named "C:\BUCKET\STUFF.TXT", then
  451. Xtyping:
  452. X
  453. X    arc a junk c:\dustbin\*.* c:\bucket\*.*
  454. X
  455. Xwill not work.
  456. X
  457. X
  458. XARC does not save the path name.  In other words, if
  459. Xyou specify a drive and/or path when adding a file,
  460. Xonly the actual file name is stored in the archive.
  461. X
  462. X
  463. X
  464. X
  465. X
  466. X
  467. X
  468. XARC                                              Page 6
  469. X ARC will never add an archive to itself, nor will it
  470. Xadd the temporary copy or a backup copy of the
  471. Xarchive.
  472. X
  473. X
  474. XAn interesting note:  It has been brought to our
  475. Xattention that BASIC programs compress to a smaller
  476. Xsize when they are *not* tokenized.  If you are more
  477. Xconcerned with space than speed, you may wish to
  478. Xconvert your BASIC programs to ASCII form before
  479. Xadding them to an archive.  Your BASIC manual should
  480. Xgive instructions on how to do this.
  481. X
  482. X
  483. X
  484. XEXTRACTING FILES
  485. X
  486. XArchive entries are extracted with the "E" (Extract)
  487. Xand "X" (eXtract) commands.  For example, if you had
  488. Xan archive named "JUNK.ARC", and you wanted all files
  489. Xin it with an extension of ".TXT" or ".DOC" to be
  490. Xrecreated on your disk, you could type:
  491. X
  492. X    ARC x junk *.txt *.doc
  493. X
  494. XIf you wanted to extract all of the files in an
  495. Xarchive named "JUNK.ARC", you could simply type:
  496. X
  497. X    ARC x junk
  498. X
  499. XWhatever method of file compression was used in
  500. Xstoring the files is reversed, and uncompressed copies
  501. Xare created in the current directory.
  502. X
  503. XYou can also specify a path name, in which case the
  504. Xdecompressed copy is placed in the specified
  505. Xdirectory.  For example, if you had an archive named
  506. X"JUNK.ARC", and you wanted all files in it with an
  507. Xextension of ".TXT" to be placed in the directory
  508. X"C:\WASTE\LAND", then you could type:
  509. X
  510. X    ARC x junk c:\waste\land\*.txt
  511. X
  512. XIf you wanted to put the file "TRASH.TXT" on your A:
  513. Xdrive, and the file "LITTER.TXT" on your B: drive, you
  514. Xcould type:
  515. X
  516. X    ARC x junk a:trash.txt b:litter.txt
  517. X
  518. X
  519. X
  520. X
  521. X
  522. X
  523. XARC                                              Page 7
  524. X If you give more than one path for a file, then only
  525. Xthe first one is used.  For example, if you typed:
  526. X
  527. X    ARC x junk a:trash.txt b:trash.txt
  528. X
  529. Xthen TRASH.TXT will be placed on your A: drive.
  530. X
  531. X
  532. X
  533. XDELETING FILES
  534. X
  535. XArchive entries are deleted with the "D" (Delete)
  536. Xcommand.  For example, if you had an archive named
  537. X"JUNK.ARC", and you wished to delete all entries in it
  538. Xwith a filename extension of ".C", you could type:
  539. X
  540. X    ARC d junk *.c
  541. X
  542. X
  543. X
  544. XLISTING ARCHIVE ENTRIES
  545. X
  546. XYou can obtain a list of the contents of an archive by
  547. Xusing the "L" (List) command or the "V" (Verbose list)
  548. Xcommand.  For example, to see what is in an archive
  549. Xnamed "JUNK.ARC", you could type:
  550. X
  551. X    ARC l junk
  552. X
  553. XIf you are only interested in files with an extension
  554. Xof ".DOC", then you could type:
  555. X
  556. X    ARC l junk *.doc
  557. X
  558. X
  559. XARC prints a short listing of an archive's contents
  560. Xlike this:
  561. X
  562. X    Name          Length    Date
  563. X    ============  ========  =========
  564. X    ALPHA.TXT         6784  16 May 85
  565. X    BRAVO.TXT         2432  16 May 85
  566. X    COCO.TXT           256  16 May 85
  567. X            ====  ========
  568. X    Total      3      9472
  569. X
  570. X
  571. X"Name" is simply the name of the file.
  572. X
  573. X
  574. X
  575. X
  576. X
  577. X
  578. XARC                                              Page 8
  579. X "Length" is the unpacked file length.  In other words,
  580. Xit is the number of bytes of disk space which the file
  581. Xwould take up if it were extracted.
  582. X
  583. X"Date" is the date on which the file had last been
  584. Xmodified, as of the time when it was added to the
  585. Xarchive.
  586. X
  587. X"Total" is pretty obvious, I think.
  588. X
  589. X
  590. XARC prints a verbose listing of an archive's contents
  591. Xlike this:
  592. X
  593. XName          Length    Stowage    SF   Size now  Date       Time    CRC
  594. X============  ========  ========  ====  ========  =========  ======  ====
  595. XALPHA.TXT         6784  Crunched   35%      4413  16 May 85  11:53a  8708
  596. XBRAVO.TXT         2432  Crunched   41%      1438  16 May 85  11:53a  5BD6
  597. XCOCO.TXT           256   Packed     5%       244  16 May 85  11:53a  3AFB
  598. X        ====  ========            ====  ========
  599. XTotal      3      9472             27%      6095
  600. X
  601. X
  602. X"Name", "Length", and "Date" are the same as for a
  603. Xshort listing.
  604. X
  605. X"Stowage" is the compression method used.  The
  606. Xfollowing compression methods are currently known:
  607. X
  608. X       --          No compression.
  609. X
  610. X     Packed        Runs of repeated byte values are
  611. X                   collapsed.
  612. X
  613. X    Crunched       Lempel-Zev compression technique
  614. X                   employed.
  615. X
  616. X    Squeezed       Huffman encoding compression
  617. X                   technique, as employed by an
  618. X                   earlier version of ARC.
  619. X
  620. X"SF" is the stowage factor.  In other words, it is the
  621. Xpercentage of the file length which was saved by
  622. Xcompression.  The total stowage factor is the stowage
  623. Xfactor for the archive as a whole, not counting
  624. Xarchive overhead.
  625. X
  626. X"Size now" is the number of bytes the file is
  627. Xoccupying while in the archive.
  628. X
  629. X
  630. X
  631. X
  632. X
  633. XARC                                              Page 9
  634. X "Time" is the time of last modification, and is
  635. Xassociated with the date of last modification.
  636. X
  637. X"CRC" is the CRC check value which has been stored
  638. Xwith the file.  Another CRC value will be calculated
  639. Xwhen the file is extracted or tested to ensure data
  640. Xintegrity.  There is no especially good reason for
  641. Xdisplaying this value.
  642. X
  643. X
  644. X
  645. XRUNNING FILES
  646. X
  647. XArchive entries may be run without being extracted by
  648. Xuse of the "R" (Run) command.  For example, if you had
  649. Xan archive named "JUNK.ARC" which contained a file
  650. Xnamed "LEMON.COM", which you wished to run, you could
  651. Xtype:
  652. X
  653. X    ARC r junk lemon
  654. X
  655. XYou can run any file from an archive which has an
  656. Xextension of ".COM", ".EXE", ".BAT", or ".BAS".  You
  657. Xdo not have to specify the extension, but all matching
  658. Xfiles are run if you do not.  In other words, if you
  659. Xhad an archive named "JUNK.ARC" which contained the
  660. Xfiles "LEMON.COM", "LEMON.EXE", and "LEMON.BAS", and
  661. Xyou typed:
  662. X
  663. X    ARC r junk lemon
  664. X
  665. XThen all three programs will be run.  You can avoid
  666. Xthis by specifying an extension in this case.
  667. X
  668. XYou can give arguments to the program you are running
  669. Xby appending them to the command line.  For example,
  670. Xif you have an archive named "JUNK.ARC" which contains
  671. Xa program named "LEMON.COM", and you wanted to run it
  672. Xgiving it the argument "JUICE", you would type:
  673. X
  674. X    ARC r junk lemon juice
  675. X
  676. XYou will need a fair amount of memory to run a program
  677. Xfrom an archive.  It probably cannot be done with less
  678. Xthan 256k.
  679. X
  680. X
  681. X
  682. X
  683. X
  684. X
  685. X
  686. X
  687. X
  688. XARC                                             Page 10
  689. X In practice, the file to be run is extracted, run, and
  690. Xthen deleted.  In other words, the above example is
  691. Xequivalent to:
  692. X
  693. X    ARC x junk lemon.com
  694. X    lemon juice
  695. X    erase lemon.com
  696. X
  697. XIf you have an archive which contains a program that
  698. Xyou will be running often, then you should probably
  699. Xextract the program from the archive and use it
  700. Xnormally.
  701. X
  702. X
  703. X
  704. XPRINTING FILES
  705. X
  706. XArchive entries may be examined with the "P" (Print)
  707. Xcommand.  This works the same as the Extract command,
  708. Xexcept that the files are not created on disk.
  709. XInstead, the contents of the files are written to
  710. Xstandard output.  For example, if you wanted to see
  711. Xthe contents of every ".TXT" file in an archive named
  712. X"JUNK.ARC", but didn't want them saved on disk, you
  713. Xcould type:
  714. X
  715. X    ARC p junk *.txt
  716. X
  717. XIf you wanted them to be printed on your printer
  718. Xinstead of on your screen, you could type:
  719. X
  720. X    ARC p junk *.txt >prn
  721. X
  722. X
  723. X
  724. XTESTING AN ARCHIVE
  725. X
  726. XThe integrity of an archive may be tested by use of
  727. Xthe "T" (Test) command.  This checks to make sure that
  728. Xall of the file headers are properly placed, and that
  729. Xall of the files are in good shape.
  730. X
  731. XThis can be very useful for critical archives, where
  732. Xdata integrity must be assured.  When an archive is
  733. Xtested, all of the entries in the archive are unpacked
  734. X(without saving them anywhere) so that a CRC check
  735. Xvalue may be calculated and compared with the recorded
  736. XCRC value.
  737. X
  738. X
  739. X
  740. X
  741. X
  742. X
  743. XARC                                             Page 11
  744. X For example, if you just received an archive named
  745. X"JUNK.ARC" over a phone line, and you want to make
  746. Xsure that you received it properly, you could type:
  747. X
  748. X    ARC t junk
  749. X
  750. XIt defeats the purpose of the T command to combine it
  751. Xwith N or W.
  752. X
  753. X
  754. X
  755. XCONVERTING AN ARCHIVE
  756. X
  757. XThe "C" (Convert) command is used to convert an
  758. Xarchive entry to take advantage of newer compression
  759. Xtechniques.  This is occasionally desirable when a new
  760. Xversion of ARC is released.  Please refer to the
  761. Xrevision history section for details on when new
  762. Xcompression methods were implemented.
  763. X
  764. XFor example, if you had an archive named "JUNK.ARC",
  765. Xand you wanted to make sure that all files with an
  766. Xextension of ".DOC" were encoded using the very latest
  767. Xmethods, you could type:
  768. X
  769. X    ARC c junk *.doc
  770. X
  771. XOr if you wanted to convert every file in the archive,
  772. Xyou could type:
  773. X
  774. X    ARC c junk
  775. X
  776. X
  777. X
  778. X
  779. X
  780. X
  781. X
  782. X
  783. X
  784. X
  785. X
  786. X
  787. X
  788. X
  789. X
  790. X
  791. X
  792. X
  793. X
  794. X
  795. X
  796. X
  797. X
  798. XARC                                             Page 12
  799. X           ARC OPTIONS
  800. X
  801. X
  802. X
  803. XThis section describes the options which are available
  804. Xto modify how ARC works.  Any of these options can be
  805. Xcombined with any of the commands, though the result
  806. Xmay not always be something you'd want to do.
  807. X
  808. X
  809. X
  810. XSUPPRESSING COMPRESSION
  811. X
  812. XThe "S" (Suppress compression) option can be combined
  813. Xwith any command that updates archive entries.  These
  814. Xinclude Add, Move, Update, Freshen, and Convert.  The
  815. Xeffect of the S option is to prevent any compression
  816. Xtechniques from being employed.  This is intended to
  817. Xallow you to add a few files at a time to an archive
  818. Xquickly, and then later convert the archive to
  819. Xcompress everything at once.
  820. X
  821. XFor example, over the course of a day you might give
  822. Xeach of the following commands:
  823. X
  824. X    ARC as junk *.txt
  825. X    ARC as junk *.mac
  826. X    ARC as junk *.doc
  827. X
  828. XAt the end of the day, when you have finished adding
  829. Xthings to the archive, you could have all of the
  830. Xarchive entries compressed at once by typing:
  831. X
  832. X    ARC c junk
  833. X
  834. XYou could also decompress the archive by typing:
  835. X
  836. X    ARC cs junk
  837. X
  838. Xthough I can't imagine why you'd want to.
  839. X
  840. X
  841. X
  842. X
  843. X
  844. X
  845. X
  846. X
  847. X
  848. X
  849. X
  850. X
  851. X
  852. X
  853. XARC                                             Page 13
  854. X BACKUP RETENTION
  855. X
  856. XWhen ARC changes an archive (during an Add, Move,
  857. XUpdate, Freshen, Delete, or Convert) it creates a new
  858. Xarchive with the same name, but with an extension of
  859. X".$$$".  For example, if you add a file to an archive
  860. Xnamed STUFF.ARC, then ARC will create a new archive
  861. Xnamed STUFF.$$$.  ARC will read from your existing
  862. Xarchive and write out the new archive with any changes
  863. Xto the ".$$$" copy.
  864. X
  865. XNormally when ARC is finished it deletes the original
  866. Xand renames the new archive to the original name (ie.
  867. XSTUFF.ARC goes away, and STUFF.$$$ becomes the new
  868. XSTUFF.ARC).  Among other things, this means that if
  869. Xanything goes wrong and ARC is unable to finish, then
  870. Xyour original archive will still be intact.
  871. X
  872. X
  873. XIn some circumstances you may wish to retain the
  874. Xoriginal version of the archive as a backup copy.  You
  875. Xcan do this easily by using the Backup option.  Add
  876. Xthe letter "B" to your command, and ARC will rename
  877. Xyour original archive to have an extension of ".BAK"
  878. Xinstead of deleting it.
  879. X
  880. X
  881. XIn other words, if you wanted to add "WASTE.TXT" to an
  882. Xarchive named "JUNK.ARC", but wanted to keep a backup
  883. Xcopy, then you would type:
  884. X
  885. X    ARC ab junk waste.txt
  886. X
  887. XYour original archive would become "JUNK.BAK", while
  888. X"JUNK.ARC" would contain the new "WASTE.TXT" file.
  889. X
  890. X
  891. XIf you keep a backup of an archive which already has a
  892. Xbackup, then the older backup copy is deleted.
  893. X
  894. X
  895. X
  896. X
  897. X
  898. X
  899. X
  900. X
  901. X
  902. X
  903. X
  904. X
  905. X
  906. X
  907. X
  908. XARC                                             Page 14
  909. X MESSAGE SUPPRESSION
  910. X
  911. XARC prints three types of messages: warnings,
  912. Xcomments, and errors.
  913. X
  914. XWarnings are messages about suspected error
  915. Xconditions, such as when a file to be extracted
  916. Xalready exists, or when an extracted file fails the
  917. XCRC error check.  Warnings may be suppressed by use of
  918. Xthe "W" (Warn) command.  You should use this command
  919. Xsparingly.  In fact, you should probably not use this
  920. Xcommand at all.
  921. X
  922. XComments (or notes) are informative messages, such as
  923. Xnaming each file as it is added to the archive.
  924. XComments and notes may be suppressed by use of the "N"
  925. X(Note) command.
  926. X
  927. XErrors are actual system problems, such as running out
  928. Xof disk space.  You cannot suppress errors.
  929. X
  930. X
  931. XFor example, suppose you extracted all files with an
  932. Xextension of ".BAS" from an archive named "JUNK.ARC"
  933. XThen, after making some changes which you decide not
  934. Xto keep, you decide that you want to extract them all
  935. Xagain, but you don't want to be asked to confirm every
  936. Xone.  In this case, you could type:
  937. X
  938. X    ARC xw junk *.bas
  939. X
  940. XOr, if you are going to add a hundred files with an
  941. Xextension of ".MSG" to an archive named "TRASH.ARC",
  942. Xand you don't want ARC to list them as it adds them,
  943. Xyou could type:
  944. X
  945. X    ARC an trash *.msg
  946. X
  947. XOr, if you want to extract the entire contents of an
  948. Xarchive named "JUNK.ARC", and you don't want to hear
  949. Xanything, then type:
  950. X
  951. X    ARC xnw junk
  952. X
  953. X
  954. XA special case is provided when extracting files from
  955. Xan archive.  One of the various warnings that can
  956. Xoccur is when a file being extracted already exists on
  957. Xdisk.  Normally, ARC will stop and ask you if you want
  958. Xto overwrite the file.  This can be suppressed with
  959. Xthe "W" command, but that will also suppress any
  960. X
  961. X
  962. X
  963. XARC                                             Page 15
  964. X warnings about other things, like failed CRC checks
  965. Xand such.
  966. X
  967. XThe "O" (Overwrite) option suppresses *only* the warning
  968. Xthat the file already exists.  For example, in our
  969. Xearlier case of extracting all the ".BAS" files from
  970. X"JUNK.ARC", a much safer way to do it is to type:
  971. X
  972. X    ARC xo junk *.BAS
  973. X
  974. X
  975. X
  976. X
  977. X
  978. X
  979. X
  980. X
  981. X
  982. X
  983. X
  984. X
  985. X
  986. X
  987. X
  988. X
  989. X
  990. X
  991. X
  992. X
  993. X
  994. X
  995. X
  996. X
  997. X
  998. X
  999. X
  1000. X
  1001. X
  1002. X
  1003. X
  1004. X
  1005. X
  1006. X
  1007. X
  1008. X
  1009. X
  1010. X
  1011. X
  1012. X
  1013. X
  1014. X
  1015. X
  1016. X
  1017. X
  1018. XARC                                             Page 16
  1019. X ENCRYPTION/DECRYPTION
  1020. X
  1021. XArchive entries may be encrypted and decrypted by
  1022. Xusing the "G" (Garble) option.  The Garble option
  1023. Xtakes the remainder of the command string as the
  1024. Xpassword to use, so it must be the *last* option.
  1025. X
  1026. X
  1027. XFor example, if you wanted to add a file named
  1028. X"WASTE.TXT" to an archive named "JUNK.ARC", and you
  1029. Xwanted to encrypt it using the password "DEBRIS", then
  1030. Xyou would type:
  1031. X
  1032. X    ARC agdebris junk waste.txt
  1033. X
  1034. XLater on, when you want to extract it again, you would
  1035. Xtype:
  1036. X
  1037. X    ARC xgdebris junk waste.txt
  1038. X
  1039. XThe password you supply is used to encrypt (or
  1040. Xdecrypt) the archive entry by performing an exclusive
  1041. XOR between each byte of the packed data and each byte
  1042. Xof the password.  The password can be any length, and
  1043. Xeach of its bytes is used in rotation.  The password
  1044. Xis converted to uppercase before it is used, so it is
  1045. X*not* case sensitive.  Since the encryption is performed
  1046. Xon the packed data, it has no effect on stowage
  1047. Xfactors.
  1048. X
  1049. XThis is not a particularly sophisticated means of
  1050. Xencryption, and it is theoretically possible to crack.
  1051. XStill, since it is performed on the packed data, the
  1052. Xresult should be quite sufficient for casual use.
  1053. X
  1054. X
  1055. XYou can, if you wish, use different passwords for
  1056. Xdifferent files in an archive, but we advise against
  1057. Xit.  If you are going to encrypt an archive, we
  1058. Xsuggest you use the same password for every file, and
  1059. Xgive the password whenever you do anything at all with
  1060. Xthe archive.  It is possible to list the entries in an
  1061. Xencrypted archive using the "L" and "V" commands
  1062. Xwithout giving the password, but nothing else will
  1063. Xwork properly.
  1064. X
  1065. X
  1066. XWe advise that you use this option sparingly, if at
  1067. Xall.  If you should forget or mistype your password,
  1068. Xit is highly unlikely that you will ever recover your
  1069. Xdata.
  1070. X
  1071. X
  1072. X
  1073. XARC                                             Page 17
  1074. X         RAMDISK SUPPORT
  1075. X
  1076. X
  1077. X
  1078. XIf you have a RAMdisk, or other high-speed storage,
  1079. Xthen you can speed up ARC somewhat by telling it to
  1080. Xput its temporary files on the RAMdisk.  You do this
  1081. Xby setting the ARCTEMP environment string with the MS-
  1082. XDOS SET command.  For example, if drive B: is your
  1083. XRAMdisk, then you would type:
  1084. X
  1085. X    set ARCTEMP=B:
  1086. X
  1087. XRefer to the MS-DOS manual for more details about the
  1088. XSET command.  You need only set the ARCTEMP string
  1089. Xonce, and ARC will use it from then on until you
  1090. Xchange its value or reboot your system.
  1091. X
  1092. X
  1093. XIf ARC does not find an environment string named
  1094. XARCTEMP, then it looks for one named TEMP to use
  1095. Xinstead.  Several packages already use the TEMP string
  1096. Xfor exactly this purpose.  If you have need of an
  1097. Xenvironment string named TEMP for something else, then
  1098. Xyou should be sure to define ARCTEMP.
  1099. X
  1100. X
  1101. XThere are a limited number of temporary files created
  1102. Xby ARC.  The Convert command uses a file named
  1103. X"$ARCTEMP.CVT" to hold each file as it is being
  1104. Xconverted.  The Run command also creates a temporary
  1105. Xfile, which has the name "$ARCTEMP", and whose
  1106. Xextension matches that of the file being run.
  1107. X
  1108. X
  1109. X
  1110. X
  1111. X
  1112. X
  1113. X
  1114. X
  1115. X
  1116. X
  1117. X
  1118. X
  1119. X
  1120. X
  1121. X
  1122. X
  1123. X
  1124. X
  1125. X
  1126. X
  1127. X
  1128. XARC                                             Page 18
  1129. X              MARC
  1130. X
  1131. X
  1132. X
  1133. XMARC is a separate program which is used to merge
  1134. Xarchives created by ARC.  MARC moves files from one
  1135. Xarchive to another without unpacking them.
  1136. X
  1137. X
  1138. XMARC is used as follows:
  1139. X
  1140. X    MARC <target> <source> [<template> . . .]
  1141. X
  1142. XWhere:
  1143. X
  1144. X    <target> is the name of the archive to add files
  1145. X    to.
  1146. X
  1147. X    <source> is the name of the archive to read files
  1148. X    from.
  1149. X
  1150. X    <template> is one or more file name templates.
  1151. X    The wildcard characters "*" and "?" may be used.
  1152. X    If no template is supplied, then all of the files
  1153. X    in <source> are added to <target>.
  1154. X
  1155. XIt is not necessary for the target to exist.  If it
  1156. Xdoes not exist, then it is created.  Thus, MARC can be
  1157. Xused as an "extractor" as well as a "merger".
  1158. X
  1159. X
  1160. XFor example, if you wanted to create an archive named
  1161. X"JUNK.ARC", which is to contain all of the files with
  1162. Xan extension of ".TXT" which are currently contained
  1163. Xin another archive named "WASTE.ARC", then you could
  1164. Xtype:
  1165. X
  1166. X    MARC junk waste *.txt
  1167. X
  1168. XIf you wanted to create an archive named "JUNK.ARC",
  1169. Xwhich is to contain all of the files currently in the
  1170. Xarchives "WASTE.ARC" and "TRASH.ARC", you could type:
  1171. X
  1172. X    MARC junk waste
  1173. X    MARC junk trash
  1174. X
  1175. X
  1176. XIf MARC is invoked with no arguments, then it gives
  1177. Xbrief directions in its use.
  1178. X
  1179. X
  1180. X
  1181. X
  1182. X
  1183. XARC                                             Page 19
  1184. X              ARCE
  1185. X
  1186. X
  1187. X
  1188. XARCE is a program which is used to extract files from
  1189. Xan archive.  It will *only* extract files, and it will
  1190. X*not* extract encrypted files.  It doesn't do anything
  1191. Xthat ARC can't do, but it is highly optimized for the
  1192. Xsole purpose of archive extraction, so it is very
  1193. Xsmall and very fast.
  1194. X
  1195. XARCE is used in a fashion very similar to the "ARC E"
  1196. Xcommand (hence the name).  The first argument is the
  1197. Xname of the archive to extract files from, and may
  1198. Xinclude a drive and path specifier.  Up to sixteen
  1199. Xadditional arguments can be supplied, which specify
  1200. Xthe files to extract.  The wildcard characters "*" and
  1201. X"?" are allowed, as with ARC.  If no files are named,
  1202. Xthen all files are extracted from the archive.  If the
  1203. Xfile being extracted already exists, you are asked
  1204. Xwhether or not you want to overwrite it.  You can use
  1205. Xthe "/R" option to bypass this.
  1206. X
  1207. XFor example, if you had an archive named "WASTE.ARC"
  1208. Xthat you wanted to extract everything from, then you
  1209. Xcould type:
  1210. X
  1211. X    ARCE waste
  1212. X
  1213. XOr if you just wanted to extract the files with a
  1214. Xfilename extension of ".ASM", you could type:
  1215. X
  1216. X    ARCE waste *.asm
  1217. X
  1218. XIf you already have a few files from the archive that
  1219. Xyou want replaced, then you could type:
  1220. X
  1221. X    ARCE waste *.asm /R
  1222. X
  1223. XIf you run ARCE with no arguments at all, then it will
  1224. Xgive you a brief reminder of how to use it.
  1225. X
  1226. X
  1227. XNOTICE:NOTICE: ARCE is the copyrighted property of Vernon D.
  1228. X        Buerg and Wayne Chin.  It is included on the
  1229. X        ARC program disk as a service to ARC users.
  1230. X
  1231. X        Vernon D. Buerg
  1232. X        456 Lakeshire Drive
  1233. X        Daly City, CA  94015
  1234. X        RBBS: (415) 994-2944
  1235. X
  1236. X
  1237. X
  1238. XARC                                             Page 20
  1239. X         VERSION NUMBERS
  1240. X
  1241. X
  1242. X
  1243. XThere seems to be some confusion about our version
  1244. Xnumbering scheme.  All of our version numbers are
  1245. Xgiven as a number with two decimal places.
  1246. X
  1247. XThe units indicate a major revision, such as adding a
  1248. Xnew packing algorithm.
  1249. X
  1250. XThe first decimal place (tenths) indicates a minor
  1251. Xrevision that is not essential, but which may be
  1252. Xdesired.
  1253. X
  1254. XThe second decimal place (hundredths) indicates a
  1255. Xtrivial revision that will probably only be desired by
  1256. Xspecific individuals or by die-hard "latest version"
  1257. Xfanatics.
  1258. X
  1259. XARC also displays its date and time of last edit.  A
  1260. Xchange of the date and time without a corresponding
  1261. Xchange in version number indicates a truly trivial
  1262. Xchange, such as fixing a spelling error.
  1263. X
  1264. X
  1265. XTo sum up: If the units change, then you should get
  1266. Xthe newer version as soon as you can.  If the tenths
  1267. Xchange, then you may want to get the newer version,
  1268. Xbut there's no hurry.  If anything else changes, then
  1269. Xyou probably shouldn't bother.
  1270. X
  1271. X
  1272. X
  1273. X
  1274. X
  1275. X
  1276. X
  1277. X
  1278. X
  1279. X
  1280. X
  1281. X
  1282. X
  1283. X
  1284. X
  1285. X
  1286. X
  1287. X
  1288. X
  1289. X
  1290. X
  1291. X
  1292. X
  1293. XARC                                             Page 21
  1294. X  COMMON QUESTIONS AND ANSWERS
  1295. X
  1296. X
  1297. X
  1298. XHere are some of the more common questions we've
  1299. Xreceived about ARC, along with their answers:
  1300. X
  1301. X
  1302. XQ: Why does ARC run out of room if I make an archive
  1303. X   bigger than about 180k?
  1304. X
  1305. XA: Because you are working on a floppy disk.  ARC
  1306. X   creates a copy of your archive, incorporating any
  1307. X   new files as it goes.  When it is done, it deletes
  1308. X   the original and renames the new one.  There are a
  1309. X   number of reasons for doing it this way, one being
  1310. X   that your original archive is still intact if
  1311. X   anything happens while ARC is running.
  1312. X
  1313. X   You can save some space by using drive specifiers
  1314. X   and having the archive and the files to add on
  1315. X   separate disks, but you still won't be able to make
  1316. X   an archive larger than about 180k.  If you need to
  1317. X   make a larger archive, and if you have a fixed
  1318. X   disk, then you can create the archive on the fixed
  1319. X   disk and then copy it to the floppy.
  1320. X
  1321. X
  1322. XQ: I've seen an ARC.COM and an ARC.EXE.  Which one is
  1323. X   the right one?
  1324. X
  1325. XA: ARC.EXE.  One or more people have been running ARC
  1326. X   through a utility that converts an ".EXE" file to a
  1327. X   ".COM" file.  But this utility is designed to save
  1328. X   space, not speed.  On ARC it saves about 250 bytes,
  1329. X   and makes no measurable difference in program
  1330. X   speed.  We've decided that the savings are not
  1331. X   worth the extra step in development in this case.
  1332. X
  1333. X
  1334. XQ: How can I get the latest version of ARC?
  1335. X
  1336. XA: ARC updates are distributed through normal
  1337. X   shareware channels, and by FidoNet.  We also ship a
  1338. X   program update disk on every order of $50 or more.
  1339. X   Also, please refer to the next section for
  1340. X   information about our maintenance contracts.
  1341. X
  1342. X
  1343. X
  1344. X
  1345. X
  1346. X
  1347. X
  1348. XARC                                             Page 22
  1349. X Q: Can I use ARC to distribute my public domain or
  1350. X   shareware program?
  1351. X
  1352. XA: Yes, of course.
  1353. X
  1354. X
  1355. XQ: Can I use ARC to distribute my commercial software
  1356. X   package?
  1357. X
  1358. XA: Yes, provided that you obtain a commercial
  1359. X   distribution license from us.  Please contact us
  1360. X   for details.
  1361. X
  1362. X
  1363. XQ: I'm a commercial user.  Why should I pay for
  1364. X   shareware that others get for free?
  1365. X
  1366. XA: Because you cannot credibly plead poverty.
  1367. X              ___   Shareware, all shareware, is an attempt to develop
  1368. X   a new marketing channel to the benefit of everyone.
  1369. X   You can still "test drive" shareware for a short
  1370. X   period, but if you decide to use it in your
  1371. X   business, then you should pay for it.
  1372. X
  1373. X
  1374. XQ: Why not allow me to select which method of
  1375. X   compression I want ARC to use?
  1376. X
  1377. XA: It would needlessly complicate ARC, both internally
  1378. X   and in use.  The exact nature of the compression
  1379. X   methods used are complex, and quite different.  The
  1380. X   only sure way to tell which will be best in any
  1381. X   given case is to analyze the data, as ARC does.
  1382. X   The method chosen may not always be what you
  1383. X   expect.
  1384. X
  1385. X
  1386. X
  1387. X
  1388. X
  1389. X
  1390. X
  1391. X
  1392. X
  1393. X
  1394. X
  1395. X
  1396. X
  1397. X
  1398. X
  1399. X
  1400. X
  1401. X
  1402. X
  1403. XARC                                             Page 23
  1404. X      MAINTENANCE CONTRACTS
  1405. X
  1406. X
  1407. X
  1408. XRegistered users of ARC receive 90 days of telephone
  1409. Xsupport at no extra charge.  If you wish, you can
  1410. Xextend this by pruchasing a maintenance contract.
  1411. X
  1412. XA maintenance contract costs $50 per year and entitles
  1413. Xyou to unlimited telephone support, as well as free
  1414. Xupdates to ARC as they come out.
  1415. X
  1416. X
  1417. X
  1418. X
  1419. X
  1420. X
  1421. X
  1422. X
  1423. X
  1424. X
  1425. X
  1426. X
  1427. X
  1428. X
  1429. X
  1430. X
  1431. X
  1432. X
  1433. X
  1434. X
  1435. X
  1436. X
  1437. X
  1438. X
  1439. X
  1440. X
  1441. X
  1442. X
  1443. X
  1444. X
  1445. X
  1446. X
  1447. X
  1448. X
  1449. X
  1450. X
  1451. X
  1452. X
  1453. X
  1454. X
  1455. X
  1456. X
  1457. X
  1458. XARC                                             Page 24
  1459. X        REVISION HISTORY
  1460. X
  1461. X
  1462. X
  1463. XCHANGES IN VERSION 3
  1464. X
  1465. XThe function used to calculate the CRC check value in
  1466. Xprevious versions has been found to be in error.  It
  1467. Xhas been replaced with the proper function.  ARC will
  1468. Xstill read archives created with earlier versions of
  1469. XARC, but it will report a warning that the CRC value
  1470. Xis in error.  All archives created prior to version
  1471. X3.0 should be unpacked and repacked with the latest
  1472. Xversion of ARC.
  1473. X
  1474. X
  1475. XTransmitting a file with XMODEM protocol rounds the
  1476. Xsize up to the next multiple of 128 bytes, adding
  1477. Xgarbage to the end of the file.  This used to confuse
  1478. XARC, causing it to think that the end of the archive
  1479. Xwas invalidly formatted.  This has been corrected in
  1480. Xversion 3.01.  Older archives may still be read, but
  1481. XARC may report them to be improperly formatted.  All
  1482. Xfiles can be extracted, and no data is lost.  In
  1483. Xaddition, ARC will automatically correct the problem
  1484. Xwhen it is encountered.
  1485. X
  1486. X
  1487. X
  1488. XCHANGES IN VERSION 4
  1489. X
  1490. XARC is adding another data compression technique in
  1491. Xthis version.  We have been looking for some technique
  1492. Xthat could improve on Huffman squeezing in at least a
  1493. Xfew cases.  So far, Lempel-Zev compression seems to be
  1494. Xfulfilling our fondest hopes, often achieving
  1495. Xcompression rates as much as 20% better than
  1496. Xsqueezing, and sometimes even better.  Huffman
  1497. Xsqueezing depends on some bytes being more "popular"
  1498. Xthan others, taking the file as a whole.  Lempel-Zev
  1499. Xcompression is instead looking for strings of bytes
  1500. Xwhich are repeated at various points (such as an end
  1501. Xof line followed by spaces for indentation).  Lempel-
  1502. XZev compression is therefore looking for repetition at
  1503. Xa more "macro" level, often achieving impressive
  1504. Xpacking rates.
  1505. X
  1506. XIn the typical case a file is added to an archive once
  1507. Xand then extracted many times, so the increased time
  1508. Xfor an update should more than pay for itself in
  1509. Xincreased disk space and reduced transmission time.
  1510. X
  1511. X
  1512. X
  1513. XARC                                             Page 25
  1514. X CHANGES IN VERSION 4.1
  1515. X
  1516. XLempel-Zev coding has been improved somewhat by
  1517. Xperforming non-repeat compression on the data before
  1518. Xit is coded (as was already done with Huffman
  1519. Xsqueezing).  This has the two fold advantage of (a)
  1520. Xreducing to some extent the amount of data to be
  1521. Xencoded, and (b) increasing the time it takes for the
  1522. Xstring table to fill up.  Performance gains are small,
  1523. Xbut noticeable.
  1524. X
  1525. XThe primary changes are in internal organization.  ARC
  1526. Xis now much "cleaner" inside.  In addition to the
  1527. Xaesthetic benefits to the author, this should make
  1528. Xlife easier for the hackers out there.  There is also
  1529. Xa slight, but not noticeable, improvement in overall
  1530. Xspeed when doing an update.
  1531. X
  1532. X
  1533. X
  1534. XCHANGES IN VERSION 4.3
  1535. X
  1536. XVersion 4.3 adds the much-demanded feature of using
  1537. Xpathnames when adding files to an archive.
  1538. X
  1539. XVersion 4.3 is also using a slightly different
  1540. Xapproach when adding a file to an archive.  The end
  1541. Xresult is twofold:
  1542. X
  1543. X1) Slightly more disk space is required on the drive
  1544. X   containing the archive.  This should only be
  1545. X   noticeable to those creating very large archives on
  1546. X   a floppy based system.
  1547. X
  1548. X2) A 30% reduction in packing time has been achieved
  1549. X   in most cases.  This should be noticeable to
  1550. X   everyone.
  1551. X
  1552. XAs always, version 4.3 is still fully upwards
  1553. Xcompatible, and is backwards compatible as far as
  1554. Xversion 4.1.
  1555. X
  1556. X
  1557. X
  1558. X
  1559. X
  1560. X
  1561. X
  1562. X
  1563. X
  1564. X
  1565. X
  1566. X
  1567. X
  1568. XARC                                             Page 26
  1569. X CHANGES IN VERSION 4.4
  1570. X
  1571. XThe temporary file introduced in version 4.3
  1572. Xoccasionally caused problems for people who had not
  1573. Xadded a FILES= statement to their CONFIG.SYS file.
  1574. XThis has now been corrected.  Also, support of the
  1575. XARCTEMP environment string was added to allow placing
  1576. Xof the temporary file on a RAMdisk.
  1577. X
  1578. XA bug was reported in the Run command, which has been
  1579. Xfixed.  From the nature of the bug, and the extreme
  1580. Xtime required before the bug was reported, it is
  1581. Xdeduced that the Run command is probably the least
  1582. Xused feature of ARC.
  1583. X
  1584. XThe Update command was changed.  It is no longer a
  1585. Xstraight synonym for Add.  Instead, Update now only
  1586. Xadds a file if it is newer than the version already in
  1587. Xthe archive, as shown by the MS-DOS date/time stamp.
  1588. X
  1589. X
  1590. X
  1591. XCHANGES IN VERSION 4.5
  1592. X
  1593. XThe Convert command was not making use of RAMdisk
  1594. Xsupport.  Now it is.
  1595. X
  1596. XThe Freshen command was added.  Our first choice for a
  1597. Xname was Refresh, but we already had a Run command.
  1598. XAssuming that you have an archive which already
  1599. Xcontains everything you want in it (for software
  1600. Xdistribution, perhaps), then Freshen would be used to
  1601. Xupdate the archive.  It was pointed out to us that ARC
  1602. Xalready knows what is in the archive, so it should be
  1603. Xable to look on disk for newer versions.  Now it can.
  1604. X
  1605. XThe Suppress compression option was added by popular
  1606. Xdemand.  It allows files to be added quickly to an
  1607. Xarchive, since the files are not analyzed or
  1608. Xcompressed, but merely stored straight.  The intent is
  1609. Xto allow users to build an archive "in pieces", and
  1610. Xthen compress all of the entries at once with the
  1611. XConvert command.  The conversion is much faster if you
  1612. Xtake advantage of RAMdisk support.
  1613. X
  1614. XA minor bug was detected in our handling of date/time
  1615. Xstamps which occasionally resulted in stamping an
  1616. Xarchive with the wrong date and time.  This has been
  1617. Xcorrected.
  1618. X
  1619. X
  1620. X
  1621. X
  1622. X
  1623. XARC                                             Page 27
  1624. X CHANGES IN VERSION 5.0
  1625. X
  1626. XThe Move command used to delete the files as it went.
  1627. XIt now waits until it is finished updating the
  1628. Xarchive, and deletes them all at once.  (You *did* know
  1629. Xthat Move is just an Add where the file gets deleted,
  1630. Xdidn't you?)  This, along with the changes made in
  1631. Xversion 4.5, means that it is now much safer to
  1632. Xinterrupt ARC while it is working.
  1633. X
  1634. XThe Print command no longer prints the name of each
  1635. Xfile.  Instead, it prints a formfeed after each file.
  1636. X
  1637. XThe Run command now supports BASICA programs.  Also,
  1638. Xthe filename extension is no longer required on the
  1639. XRun command.
  1640. X
  1641. XThe Garble option was added.  It provides a convenient
  1642. Xmeans of low level data security for the casual user.
  1643. XUse it sparingly, if at all.
  1644. X
  1645. XARC no longer tests for the presence of $ARCTEMP.CRN
  1646. Xbefore creating a new one.  If you interrupt ARC a
  1647. Xlot, you'll find this much more convenient.  If you
  1648. Xhappen to have a file named $ARCTEMP.CRN which you
  1649. Xwant to keep, too bad.
  1650. X
  1651. XImproved error recovery was added when reading an
  1652. Xarchive.  ARC now has a good chance of recovering the
  1653. Xdata from a corrupted archive (the corrupted entry is
  1654. Xstill lost, of course).
  1655. X
  1656. XPath support has been added for all commands, though
  1657. Xit doesn't do anything on most of them.  For example,
  1658. Xthere isn't much we can do with a path in the List
  1659. Xcommand.  But many users will be glad to know that a
  1660. Xpath can be used when extracting a file, and specifies
  1661. Xwhere the file is to be placed.
  1662. X
  1663. XSupport for the TEMP environment string was added.  If
  1664. XARC doesn't find an environment string named ARCTEMP,
  1665. Xthen it looks for one named TEMP to use instead.
  1666. XSeveral packages already use the TEMP string for
  1667. Xexactly this purpose.  With any luck, maybe we can get
  1668. Xa standard going.
  1669. X
  1670. X
  1671. X
  1672. X
  1673. X
  1674. X
  1675. X
  1676. X
  1677. X
  1678. XARC                                             Page 28
  1679. X ARC is now using a different variation of Lempel-Zev
  1680. Xcoding, courtesy of Kent Williams, who found it on
  1681. XUSENET and adapted it to the IBM PC.  The new method
  1682. Xdiffers from the old in several respects.  The most
  1683. Xsignificant differences are:
  1684. X
  1685. X1) Where our previous implementation used a fixed code
  1686. X   size of twelve bits, the new one starts with a code
  1687. X   size of nine bits and increases it as it needs to.
  1688. X
  1689. X2) The earlier method tended to "choke" on large files
  1690. X   when its string table filled up.  The new method
  1691. X   has a rather ingenious scheme its authors call
  1692. X   "adaptive reset."  When it notices that its string
  1693. X   table has filled, and its compression ratio is
  1694. X   starting to suffer, it clears the table and starts
  1695. X   defining new strings.
  1696. X
  1697. XOur benchmarks show an improvement in compression on
  1698. Xthe order of 10% when crunching is used.
  1699. XAdditionally, ARC 5.0 is on the order of 23% faster at
  1700. Xadding a file when crunching is used, or 13% faster
  1701. Xwhen squeezing is used.  Extracting a file crunched
  1702. Xwith the new method is 27% faster than it is with the
  1703. Xold method.  Extraction of any other type of file
  1704. X(including those crunched with the older method) is no
  1705. Xfaster than before.  These figures are based on our
  1706. Xown benchmark tests; your results may vary.
  1707. X
  1708. XThe previous implementation of Lempel-Zev coding is no
  1709. Xlonger used to pack files.  The "V" (Verbose listing)
  1710. Xcommand distinguishes between the two by referring to
  1711. Xthe older method as "crunched" (with a lower-case
  1712. X"c"), and the newer method as "Crunched" (with a
  1713. Xcapital "C").
  1714. X
  1715. XARC 5.0 can still read archives created by earlier
  1716. Xversions of ARC, but once again it creates archives
  1717. Xwhich older versions cannot read.
  1718. X
  1719. X
  1720. X
  1721. XCHANGES IN VERSION 5.1
  1722. X
  1723. XRick Moore discovered that ARC was occasionally adding
  1724. Xan archive to itself.  This would only happen when the
  1725. Xarchive is in the same directory as the files being
  1726. Xadded, and its name comes last.  This bug has been
  1727. Xfixed, though it is still possible to fool ARC into
  1728. Xadding an archive to itself by getting tricky with
  1729. Xpath names.
  1730. X
  1731. X
  1732. X
  1733. XARC                                             Page 29
  1734. X Dana Montgomery found the upper limit on how many
  1735. Xfiles can be added to an archive.  There's always been
  1736. Xan upper limit, but it depends on memory, and used to
  1737. Xbe larger than anyone could possibly want (knock on
  1738. Xwood).  However, the added memory requirements in
  1739. Xversion 5.0 lowered this limit into the realm of
  1740. Xpossibility, somewhere around 300 files.  We change
  1741. Xsome things around, and effectively, there is no
  1742. Xlonger a limit on how many files you can add at once.
  1743. XARC will add the files in batches of as many as it can
  1744. Xhandle at one time.
  1745. X
  1746. XWe've also introduced a new packaging method for ARC
  1747. Xand its documentation, since we are in the unique
  1748. Xposition of being unable to use ARC for this purpose.
  1749. XWe've created a program called ARC51.COM which, when
  1750. Xexecuted, attempts to create the ARC program and
  1751. Xmanual.  You must be in the same directory as
  1752. XARC51.COM when you run it.
  1753. X
  1754. X
  1755. X
  1756. XCHANGES IN VERSION 5.2
  1757. X
  1758. XWe've made some changes to Lempel-Zev coding to
  1759. Xfurther improve its compression ability on "poor fit"
  1760. Xfiles (mainly .EXE and .COM files).  The result is
  1761. Xthat crunching now works better than squeezing on
  1762. Xalmost all files, and comes close on most of the rest
  1763. X(within 5%, by our benchmarks).  Accordingly, we have
  1764. Xdropped Huffman encoding in this version.  Our
  1765. Xbenchmarks show a speed improvement of around 14% when
  1766. Xadding a file to an archive.
  1767. X
  1768. XA low-level file copy routine was implemented to speed
  1769. Xup bulk data moves.  Deleting or adding a file to a
  1770. Xlarge existing archive is now much faster.
  1771. X
  1772. XThe Run command has been modified to allow passing
  1773. Xcommand line arguments to the program being run.
  1774. X
  1775. XThe temporary file introduced in version 4.3 has been
  1776. Xeliminated.  Crunched output generated in the analysis
  1777. Xphase is now placed directly in the output archive,
  1778. Xand is rewritten if crunching turns out not to be the
  1779. Xbest choice.  This can, in rare circumstances, cause
  1780. Xan archive to be slightly larger than it should be,
  1781. Xbut it also makes ARC considerably faster at adding
  1782. Xfiles to an archive.
  1783. X
  1784. X
  1785. X
  1786. X
  1787. X
  1788. XARC                                             Page 30
  1789. X   PROGRAM HISTORY AND CREDITS
  1790. X
  1791. X
  1792. X
  1793. XIn its short life thus far, ARC has astounded us with
  1794. Xits popularity.  We first wrote it in March of 1985
  1795. Xbecause we wanted an archive utility that used a
  1796. Xdistributive directory approach, since this has
  1797. Xcertain advantages over the then popular central
  1798. Xdirectory approach.  We added automatic squeezing in
  1799. Xversion 2 at the prompting of a friend.  In version
  1800. X2.1 we added the code to test for the best compression
  1801. Xmethod.  In less than a year we found that our humble
  1802. Xlittle program had spread across the country, and
  1803. Xseems to have become a new institution.
  1804. X
  1805. XWe are thankful for the support and appreciation we
  1806. Xhave received.  We hope that you find this program of
  1807. Xuse.
  1808. X
  1809. X
  1810. XIf we have achieved greatness, it is because we have
  1811. Xstood upon the shoulders of giants.  Nothing is
  1812. Xcreated as a thing unto itself, and ARC is no
  1813. Xexception.  Therefore, we would like to give credit to
  1814. Xthe following people, without whose efforts ARC could
  1815. Xnot exist:
  1816. X
  1817. X
  1818. XBrian W. Kernighan and P. J. Plauger, whose book
  1819. X"Software Tools" provided many of the ideas behind the
  1820. Xdistributive directory approach used by ARC.
  1821. X
  1822. XDick Greenlaw, who wrote the public domain SQ and USQ
  1823. Xprograms, in which the Huffman squeezing algorithm was
  1824. Xfirst developed.
  1825. X
  1826. XRobert J. Beilstein, who adapted SQ and USQ to
  1827. XComputer Innovations C86 (the language we use), thus
  1828. Xproviding us with important parts of our squeezing
  1829. Xlogic.
  1830. X
  1831. XKent Williams, who graciously allowed us to use his
  1832. XLZWCOM and LZWUNC programs as a basis for our Lempel-
  1833. XZev compression logic, and who continues to make
  1834. Xvaluable contributions.
  1835. X
  1836. XDavid Schwaderer, whose article in the April 1985
  1837. Xissue of PC Tech Journal provided us with the logic
  1838. Xfor calculating the CRC 16 bit polynomial.
  1839. X
  1840. X
  1841. X
  1842. X
  1843. XARC                                             Page 31
  1844. X Terry A. Welch, whose article "A Technique for High
  1845. XPerformance Data Compression", IEEE Computer Vol 17 No
  1846. X6 (June 1984) seems to have started all the research
  1847. Xon Lempel-Zev coding.
  1848. X
  1849. XSpencer W. Thomas, Jim McKie, Steve Davies, Ken
  1850. XTurkowski, James A.  Woods, and Joe Orost, who are the
  1851. Xauthors of the UNIX compress utility.
  1852. X
  1853. XAlex Jacobs, who in June of 1985 sent us the very
  1854. Xfirst shareware contribution we ever received.
  1855. X
  1856. X
  1857. XAnd many, many others whom we could not identify.
  1858. X
  1859. X
  1860. X
  1861. X
  1862. X
  1863. X
  1864. X
  1865. X
  1866. X
  1867. X
  1868. X
  1869. X
  1870. X
  1871. X
  1872. X
  1873. X
  1874. X
  1875. X
  1876. X
  1877. X
  1878. X
  1879. X
  1880. X
  1881. X
  1882. X
  1883. X
  1884. X
  1885. X
  1886. X
  1887. X
  1888. X
  1889. X
  1890. X
  1891. X
  1892. X
  1893. X
  1894. X
  1895. X
  1896. X
  1897. X
  1898. XARC                                             Page 32
  1899. X         BULLETIN BOARDS
  1900. X
  1901. X
  1902. X
  1903. XARC is distributed mainly through shareware channels.
  1904. XAmong other things, this means that ARC is available
  1905. Xfrom many bulletin board systems.  In fact, the system
  1906. Xoperators (sysops) of many bulletin boards have taken
  1907. Xto storing almost all of their downloadable files in
  1908. Xarchives to save themselves disk space and to save
  1909. Xtheir users time.
  1910. X
  1911. XThis also makes things more convenient for the
  1912. Xbulletin board users, since one archive may contain
  1913. Xseveral programs, any related data files, and the
  1914. Xdocumentation.  Many shareware authors have taken to
  1915. Xdistributing their software in archives to help ensure
  1916. Xthat the users receive everything.
  1917. X
  1918. XObviously, we can't do that with ARC.  As a result,
  1919. Xmany of our users have ARC, but don't have the manual.
  1920. XMost of our customer support calls come from people
  1921. Xwho have never seen the manual, and in many cases
  1922. Xdidn't even know that one exists!
  1923. X
  1924. XTo solve this problem we developed what is in essence
  1925. Xa self-unpacking archive.  We distribute this as
  1926. X"ARCxxx.COM", where "xxx" is the current version
  1927. Xnumber.  For example, ARC version 5.20 would be
  1928. Xdistributed as "ARC520.COM".  This program, when run,
  1929. Xunpacks itself into a copy of ARC plus its
  1930. Xdocumentation.
  1931. X
  1932. XNow that we've gone to all that work, we'd really
  1933. Xappreciate it if you would use this program when you
  1934. Xdistribute ARC.
  1935. X
  1936. X
  1937. X
  1938. X
  1939. X
  1940. X
  1941. X
  1942. X
  1943. X
  1944. X
  1945. X
  1946. X
  1947. X
  1948. X
  1949. X
  1950. X
  1951. X
  1952. X
  1953. XARC                                             Page 33
  1954. X          SITE LICENSES
  1955. X
  1956. X
  1957. X
  1958. XCorporate users may wish to obtain a site license for
  1959. Xthe use of ARC.  Please use the order form in this
  1960. Xmanual to order a site license.  Site licenses are
  1961. Xgranted as of when we receive your payment.  License
  1962. Xfees vary depending on the number of computers on
  1963. Xwhich ARC will be used, as follows:
  1964. X
  1965. X     1 to  9 machines  $35 each
  1966. X    10 to 24 machines  $25 each
  1967. X    25 to 49 machines  $20 each
  1968. X    50 to 99 machines  $15 each
  1969. X    over  99 machines  $1500 one time fee
  1970. X
  1971. X
  1972. X
  1973. XEnclosed is a site license agreement, which should be
  1974. Xsigned and sent with your payment when ordering a
  1975. Xcommercial site license.
  1976. X
  1977. X
  1978. XA commercial site license does not include additional
  1979. Xcopies of the ARC program disk and the ARC manual.
  1980. XInstead, you make your own copies of the disk and
  1981. Xmanual as you need them.  If you wish, you can order
  1982. Xadditional program disks and manuals from us.
  1983. X
  1984. XAdditional program disks cost $10 each.  Additional
  1985. Xmanuals cost $20 each.  If you wish, you can order
  1986. Xprogram sets for $40 each.  A "program set" is a
  1987. Xprogram disk and manual enclosed in a vinyl binder.
  1988. XThere is a $50 minimum on all orders.
  1989. X
  1990. X
  1991. X
  1992. X
  1993. X
  1994. X
  1995. X
  1996. X
  1997. X
  1998. X
  1999. X
  2000. X
  2001. X
  2002. X
  2003. X
  2004. X
  2005. X
  2006. X
  2007. X
  2008. XARC                                             Page 34
  2009. X              SITE LICENSE APPLICATION
  2010. X
  2011. X
  2012. X
  2013. XThe use of ARC in a commercial environment or government organization
  2014. Xis granted under the following terms:
  2015. X
  2016. X1.  Payment of the license fee must be made to System Enhancement
  2017. X    Associates, Inc.  The fee is based on the number of computers
  2018. X    which will be used to run ARC, as follows:
  2019. X
  2020. X          1 to  9 machines  $35 each
  2021. X         10 to 24 machines  $25 each
  2022. X         25 to 49 machines  $20 each
  2023. X         50 to 99 machines  $15 each
  2024. X         over  99 machines  $1500 one time fee
  2025. X
  2026. X2.  You may use ARC on the number of computers included in the license
  2027. X    fee.  If you have paid the fee for over 99 machines, then you may
  2028. X    use ARC on any number of computers within your organization.
  2029. X
  2030. X3.  You may make copies of the program and documentation, in their
  2031. X    original,  unmodified form,  without restriction.  You may
  2032. X    distribute these copies without restriction.
  2033. X
  2034. X4.  If these copies are distributed outside of your organization,  you
  2035. X    have no obligation to control the use of those copies which are
  2036. X    outside of your organization.
  2037. X
  2038. X5.  You may make copies of the program documentation, in both its
  2039. X    printed form and machine readable form, without restriction.
  2040. X
  2041. X6.  You may use all future versions of ARC under this license.
  2042. X
  2043. X7.  You may *not* modify the program or charge a fee for copying or
  2044. X    distributing the program or its documentation.
  2045. X
  2046. X8.  It is your responsibility to make the necessary copies and to
  2047. X    deliver them to the computers which they will be used on.  If you
  2048. X    wish, you can order additional ARC program disks and manuals.
  2049. X
  2050. X9.  We are not responsible for *anything* that may happen or not happen
  2051. X    if you use ARC.  You're on your own.
  2052. X
  2053. X
  2054. X    I agree to abide by the terms and conditions of this license.
  2055. X
  2056. X    _____________________________         __________________________
  2057. X    Signature                             Date
  2058. X
  2059. X    _____________________________
  2060. X    Name (please print or type)
  2061. X
  2062. X    _____________________________
  2063. X    Title
  2064. X
  2065. X    _____________________________
  2066. X    Company
  2067. X
  2068. X
  2069. X                    ORDER FORM
  2070. X
  2071. X
  2072. X
  2073. XCheck which items you wish to purchase:
  2074. X
  2075. X    [] Noncommercial license for the use of ARC.
  2076. X
  2077. X    [] Commercial license for the use of ARC on ___ computers (see
  2078. X       attached price schedule and terms).
  2079. X
  2080. X    [] Program disk and documentation (only on orders of $50 or more,
  2081. X       not counting maintenance contracts).
  2082. X
  2083. X    [] ____ additional program disks at $10 per disk.
  2084. X
  2085. X    [] ____ additional manuals at $20 per manual
  2086. X
  2087. X    [] ____ additional program sets (disk, manual, and binder) at $40
  2088. X       per program set.
  2089. X
  2090. X    [] One year maintenance agreement at $50 per year.
  2091. X
  2092. X    [] Payment of $_____ is enclosed (check or money order).
  2093. X
  2094. X    [] Please charge $_____ to my [] Visa or [] MasterCard:
  2095. X
  2096. X      Card number:  _______________________________
  2097. X
  2098. X      Expiration date:  ___________________________
  2099. X
  2100. X      Signature:  _________________________________
  2101. X
  2102. X    _______________________________________________
  2103. X    Name
  2104. X
  2105. X    _______________________________________________
  2106. X
  2107. X
  2108. X    _______________________________________________
  2109. X    Address
  2110. X
  2111. X    ______________________   ________  ____________
  2112. X    City                     State     Zip
  2113. X
  2114. X    _______/_______
  2115. X    FidoNet address
  2116. X
  2117. X
  2118. XSend this completed form to:
  2119. X
  2120. X                  System Enhancement Associates, Inc.
  2121. X                     21 New Street, Wayne NJ 07470
  2122. X
  2123. XFor program disk orders outside the U.S., please add an additional $5,
  2124. Xand enclose an international money order payable in U.S. currency.
  2125. X
  2126. XFor commercial site license orders, please enclose a signed copy of
  2127. Xthe site license agreement.
  2128. X
  2129. ________This_Is_The_END________
  2130. if test `wc -c < Arc521.doc` -ne    54144; then
  2131.     echo 'shar: Arc521.doc was damaged during transit (should have been    54144 bytes)'
  2132. fi
  2133. fi        ; : end of overwriting check
  2134. echo 'x - arc.1'
  2135. if test -f arc.1; then echo 'shar: not overwriting arc.1'; else
  2136. sed 's/^X//' << '________This_Is_The_END________' > arc.1
  2137. X.TH ARC 1L "12 Jun 1988" "Local" "LOCAL COMMANDS"
  2138. X.SH NAME
  2139. Xarc \- pc archive utility
  2140. X.SH SYNOPSIS
  2141. X.B arc
  2142. Xa|m|u|f|d|x|e|r|p|l|v|t|c [ biswnoq ] [ g\fIpassword\fR ]
  2143. X.I archive 
  2144. X[ \fIfilename\fR ...]
  2145. X.SH DESCRIPTION
  2146. X.I Arc
  2147. Xis a general archive and file compression utility, used to maintain
  2148. Xa compressed archive of files.
  2149. XAn
  2150. X.I archive
  2151. Xis a single file that combines many files, reducing storage space
  2152. Xand allowing multiple files to be handled as one.
  2153. X.I Arc
  2154. Xuses one of several compression methods for each file within the
  2155. X.IR archive ,
  2156. Xbased on whichever method yields the smallest result.
  2157. X.SH INSTRUCTIONS
  2158. XExecute
  2159. X.I arc
  2160. Xwith no arguments for fairly verbose, usable instructions.
  2161. X.SH COMMAND SWITCHES
  2162. X.TP 3
  2163. Xa
  2164. Xadd files to archive.  Copies the indicated files to the archive.
  2165. X.TP
  2166. Xm
  2167. Xmove files to archive.  Same as 'a' switch except
  2168. Xthat the files are deleted from the directory as
  2169. Xthey are moved to the archive.
  2170. X.TP
  2171. Xu
  2172. Xupdate files in archive.  This switch will replace archived
  2173. Xfiles when the named file is newer than the archived copy.
  2174. XNew files will be added automatically.
  2175. X.TP
  2176. Xf
  2177. Xfreshen files in archive.  Same as 'u' except that
  2178. Xnew files will not be added.
  2179. X.TP
  2180. Xd
  2181. Xdelete files in archive.  The named files are removed from the archive.
  2182. X.TP
  2183. Xx,e
  2184. Xextract files from archive.  The named files are extracted
  2185. Xfrom the archive and created in the current directory
  2186. Xin an uncompressed state.
  2187. X.TP
  2188. Xr
  2189. Xrun one file with arguments from archive.  Any
  2190. Xprogram may be executed directly from the archive.
  2191. XThe parameters given after the program name are passed to
  2192. Xthe program without modification.
  2193. X.TP
  2194. Xp
  2195. Xcopy files from archive to standard output.  Useful
  2196. Xwith I/O redirection. A form-feed is appended after each file,
  2197. Xto ease use with printers.
  2198. X.TP
  2199. Xl
  2200. Xlist files in archive.  Limited information listing
  2201. Xof files contained in an archive.  Displays the
  2202. Xfilename, original length, and date last modified.
  2203. XIf the 'n' option (see below) is used, only the
  2204. Xfilename is displayed.
  2205. X.TP
  2206. Xv
  2207. Xverbose listing of files in archive.  Complete
  2208. Xinformation listing of files contained in an archive.
  2209. XDisplays the filename, original length, storage method,
  2210. Xstorage factor (% savings), compressed size, date, time,
  2211. Xand CRC.
  2212. X.TP
  2213. Xt
  2214. Xtest archive integrity.  Computes CRC values for each member of
  2215. Xthe archive and compares against the previously saved value.
  2216. X.TP
  2217. Xc
  2218. Xconvert entry to new packing method.  Convert files
  2219. Xstored with older methods to newer methods that are
  2220. Xmore efficient. Also useful for files previously
  2221. Xarchived with the 's' option.
  2222. X.SH OPTIONS
  2223. X.TP 3
  2224. Xb
  2225. Xretain backup copy of archive.  Keep the original
  2226. Xarchive file and rename to .BAK.
  2227. XThis switch may be used with the
  2228. Xfollowing commands:  a, m, u, f, d, c.
  2229. X.TP
  2230. Xi
  2231. Xsuppress image mode.  This switch causes files to
  2232. Xbe treated as text files, and will translate their
  2233. Xend-of-line sequence. (Unix's '\\n' vs. '\\r\\n' used
  2234. Xon many other systems.)  The default is to perform
  2235. Xno translation when compressing or extracting files.
  2236. XThis option makes dealing with text files much nicer,
  2237. Xthough the 'tr' command can also be used. ('\\r' in
  2238. Xmakefiles and C source code is such a nuisance...)
  2239. X.TP
  2240. Xs
  2241. Xsuppress compression.  This forces new files to be
  2242. Xsaved using Method 2 (no compression).  This switch
  2243. Xmay be used with the following commands:  a, m, u, f, c.
  2244. X.TP
  2245. Xw
  2246. Xsuppress warning messages.  This switch will keep
  2247. Xwarning messages from being displayed which is the default.
  2248. XMost warnings concern the deletion or existence of
  2249. Xfiles with the same name.
  2250. X.TP
  2251. Xn
  2252. Xsuppress notes and comments.  This switch will keep
  2253. Xuseful notes from being displayed which is the default.
  2254. XMost notes indicate what stage of compression is
  2255. Xbeing run (analyze, compaction, storage).
  2256. X.TP
  2257. Xo
  2258. Xoverwrite existing files when extracting.  This switch
  2259. Xwill make existing files silently get overwritten, instead
  2260. Xof asking for confirmation, which is the default.
  2261. X.TP
  2262. Xq
  2263. Xforce Squash compression method.  This switch causes
  2264. Xthe Squash compression method to be used, instead of
  2265. XCrunch, which is the default.
  2266. X.TP
  2267. Xg
  2268. Xencrypt/decrypt archive entry.  This is used to encode
  2269. Xfiles so that others may not read them.  BE CAREFUL!
  2270. XThis must be the last parameter in the switches because
  2271. Xeverything following is part of the password.
  2272. X.SH PROGRAMMING NOTES
  2273. X.I Arc
  2274. XVersion 2 differs from version 1 in that archive entries
  2275. Xare automatically compressed when they are added to the archive,
  2276. Xmaking a separate compression step unecessary.  The nature of the
  2277. Xcompression is indicated by the header version number placed in
  2278. Xeach archive entry, as follows:
  2279. X.nf
  2280. X         1 = Old style, no compression
  2281. X         2 = New style, no compression
  2282. X         3 = Compression of repeated characters only
  2283. X         4 = Compression of repeated characters plus Huffman SQueezing
  2284. X         5 = Lempel-Zev packing of repeated strings (old style)
  2285. X         6 = Lempel-Zev packing of repeated strings (new style)
  2286. X         7 = Lempel-Zev Williams packing with improved hash function
  2287. X         8 = Dynamic Lempel-Zev packing with adaptive reset
  2288. X         9 = Squashing
  2289. X.fi
  2290. X
  2291. XType 5, Lempel-Zev packing, was added as of version 4.0
  2292. X
  2293. XType 6 is Lempel-Zev packing where runs of repeated characters
  2294. Xhave been collapsed, and was added as of version 4.1
  2295. X
  2296. XType 7 is a variation of Lempel-Zev using a different hash
  2297. Xfunction which yields speed improvements of 20-25%, and was
  2298. Xadded as of version 4.6
  2299. X
  2300. XType 8 is a different implementation of Lempel-Zev, using a
  2301. Xvariable code size and an adaptive block reset, and was added
  2302. Xas of version 5.0
  2303. X
  2304. XType 9 is another variation of Lempel-Zev, using a larger
  2305. Xhash table. This method was developed by Phil Katz, and is
  2306. Xnot supported by the "official" \fBARC\fP programs.
  2307. X
  2308. X.I Arc
  2309. Xwill look for environment variables named \fIARCTEMP\fP or
  2310. X\fITMPDIR\fP, which, if present, indicates the pathname
  2311. Xwhere temporary files should be created. This is typically
  2312. Xthe location of a RAMdisk on a microcomputer, "/tmp/" or
  2313. Xleft unset.
  2314. X
  2315. XSee the included documentation file for more details.
  2316. X.SH HISTORY
  2317. X\fIArc\fP has been in use in the CP/M and MSDOS world for many years.
  2318. XThom Henderson developed the original version, but it is important to note that
  2319. X\fIarc\fP is based on the file compression theories developed by Huffman, Welch,
  2320. XKnott, Knuth, and many other scientists. This implementation is based on
  2321. Xversion 5.21 of the MSDOS program.
  2322. X.SH BUGS
  2323. X\fIArc\fP behaves just like the PC version of the program; all functions
  2324. Xof the "usage" display are working.
  2325. XFull compatibility with PC ARC files is maintained, the price for which is
  2326. Xthat \fIarc\fP doesn't like long filenames, and can only archive files with
  2327. Xnames of up to 12 characters.
  2328. XIt will *sometimes* do The Right Thing with them, but I suggest
  2329. Xyou put long-winded filenames in a "shar" before
  2330. X.IR arc ing
  2331. Xthem.
  2332. X
  2333. XThere shouldn't be any problems, (hah!) but if you find any, please
  2334. Xsend them to me at:
  2335. X
  2336. X    hyc@umix.cc.umich.edu
  2337. X    {rutgers, uunet}!umix!hyc
  2338. X
  2339. X.SH AUTHORS
  2340. XOriginal MSDOS program by Thom Henderson
  2341. X.br
  2342. XCOPYRIGHT(C) 1985-87 by System Enhancement Associates; ALL RIGHTS RESERVED
  2343. X
  2344. XOriginal Lempel-Zev code derived from compress 4.0.
  2345. XModified to support Squashing by Dan Lanciani (ddl@harvard.edu)
  2346. XPorted from MSDOS by Howard Chu (umix!hyc),
  2347. Xwith help from John Gilmore (hoptoad!gnu), James Turner (daisy!turner)
  2348. Xand others.
  2349. ________This_Is_The_END________
  2350. if test `wc -c < arc.1` -ne     7232; then
  2351.     echo 'shar: arc.1 was damaged during transit (should have been     7232 bytes)'
  2352. fi
  2353. fi        ; : end of overwriting check
  2354. exit 0
  2355.  
  2356.  
  2357.